Voice communication services, represented by telephone, have been conventionally offered by telephone communications companies establishing communications networks on their own accounts.
FIG. 13 shows an example of a communications network for offering conventional telephone services. The telephone network is comprised of regional centers 801 at the topmost layer, primary centers 802 connected to one regional center, toll centers 803 and terminal offices 804, each of which is connected to subscribers 805 as the users. Regional centers 801 form mesh networks while primary centers 802, toll centers 803 and terminal offices 804 form star-like networks.
In the telephone network, each of the centers and offices has an exchange, and when a transmission link needs to be established between exchanges, line switching is performed by time division multiplex system of the communication band necessary for the connection. FIG. 14 shows the concept of line switching based on time division multiplex system. A telephone 1001 used by a user is connected to an exchange 1002. A transmission path 1003 having a predetermined band is provided to connect between the exchanges. The calls among a plurality of telephones 1001a to 1001h are realized through the transmission paths based on time division multiplex system. It is understood from FIG. 14 that calls are established between phone 1001a and phone 1001d, phone 1001b and phone 1001e, and phone 1001c and phone 1001h while the transmission path between the exchanges still has empty areas. In time division multiplex system, since a multiple number of signals to be exchanged between terminals are multiplexed using frames 1004 each having a predetermined period unit, the band for a call once established between terminals will be secured until the call terminates. The unit of frame 1004 of division multiplexing is typically 8 KHz (125 psec.). Since this relation is held for all the connected exchanges, there is no need to pay attention to synchronization between the terminals if each telephone terminal transmits and receives data based on this signal.
In this way, in the line switching network used in the telephone network or the like, the entire network is operated based on the same reference signal, so that the bandwidth and delay time between connected terminals are guaranteed.
On the other hand, because of the spread of PCs and the Internet, communications through electronic mail or through WWW (world wide web) have become intensively developed. FIG. 15 shows an example of communications among PCs over the Internet. On the Internet, all information is exchanged in packets. PCs 904a and 904b connected within an intranet 901 is connected to the Internet 905 at an Internet provider 903a by way of a router or gateway 902. Ordinary users of PCs 904c and 904d access to the Internet 905 by way of Internet Providers 903b and 903c using the telephone line via PPP.
Communications on the Internet are performed using TCP/UDP/IP. FIG. 16 shows the concept for routing data on the Internet. Each terminal monitors the status of the network and sends out packets having a destination address (IP address) attached thereon onto the network when the network has any empty channel. Packets from terminals connected to the network are checked as to their IP addresses and routed by routers so that they will be transferred to the routers that are located nearest to their destinations. The packets are thus transferred to those routers, where they are checked as to their addresses, and further, transferred to associated terminals.
In this way, data communication through the Internet by routing makes it possible to transmit and receive data as long as there is an empty channel allowing for packet transmission on the network, so that a large amount of data can be communicated at low cost.
In recent years, there has been an increasing tendency toward using applications of the Internet for real-time operations such as IP phone (VoIP), teleconference, IP/TV, etc., in addition to use of non-real-time data communications such as electronic mail and WWW. When the Internet is used in this manner, the problem of packet jitter due to routing occurs.
The situation of occurrence of jitter will be explained with reference to FIG. 16. Packets 1102a and 1102b sent out respectively from PCs 1101a and 1101b reach a router 1103a. In order to transfer the packets to their own destinations, router 1103a sends out packets 1102a and 1102b in the order in which they reached it. No jitter will arise if the packets from each terminal just fit in the transmission intervals between the packets from the other terminal. However, if two packets are sent out at almost the same timing, the packet which has first arrived at router 1103a is processed first while the packet from the other terminal is kept waiting during that time. For example, as shown in FIG. 16, suppose that packets 1102a are sent out to router 1103a at intervals of period 1104a while packets 1102b are sent out at intervals of period 1104b. Router 1103a processes the packets and sends them out to the router 1103b in the order in which they reached it. First, packet 1102b and then packet 1102a are processed. Therefore, packet 1102a is kept waiting from its arrival until the process of packet 1102b is completed. As a result, the transmission intervals become different from those at which the packets were send out from PC1101a and 1100b. At router 1130b, packets 1102a and 1102b are separated and sent out to respective destinations PC1101c and 1101d. That is, the transmission interval of packets 1102a changes from 1104a to 1104c and the transmission interval of packets 1102b changes from 1104b to 1104d, which will cause jitter.
As stated above, packet communication such as through the Internet causes packet jitter due to routing over the network. When packet jitter occurs, voice sound comes in with breaks in the case of IP phone, for example. For improvement against this, in general a buffer is provided on the receiver side so that data can be reproduced after a certain amount of data has been stored. However, since jitter on the network depends on the traffic in the network during the communication, breaks occur if the buffer has a lower storage capacity whereas delay increases if the buffer has a higher storage capacity, degrading the characteristics of conversation on IP phone.
Another problem with packet communication is the difference in clock rate between the transmitter end and the receiver end. The problem with real-time operations in packet communication will be described with reference to FIG. 17. A transmitting terminal 1202a is comprised of a microphone 1211, an A/D converting circuit 1212, an encoder circuit 1213, a network interface 1214a while a receiving terminal 1202b is comprised of a network interface 1214b, a decoder circuit 1215, an D/A converting circuit 1216 and a speaker 1217. In packet communication, since each terminal does not operate in synchronism with the clock on the network as in a line exchange configuration, individual terminals operate in accordance with their own clocks 1201a and 1201b, respectively. Here, if there is a difference in clock rate for sampling voice sound between the transmitter side and receiver side, data overflow or underflow will occur on the receiver side.
In order to solve this, in the packet communication, there is a method of reproducing the reference clock, which is used for audio and video transmission based on ATM in MPEG2. The overall configuration will be described with reference to FIG. 18. Also in ATM, data is transmitted in packets (cells) as in the Internet mentioned above. In MPEG2 transmission based on ATM, a 27 MHz clock 1301 is provided for the terminal so as to transmit data together with reference clock information 1302 as clock reference signal information (PCR) 1303. The receiving terminal reproduces the data using a PLL1304 based on the clock reference signal information (PCR) 1303. With this arrangement, the reference clock information 1302 on the transmitter side can be reproduced on the receiver side so that no buffer overflow and underflow will occur due to clock discrepancy.
This method is markedly effective as a method of sending a reference clock to a destination terminal by packet communication having no common clock, but needs to provide a 27 MHz clock on the transmitter side and a high-precision PLL on the receiver side, which are too expensive to be provided for PCs and the like. Further, it is necessary for this method to send an exact PCR from the transmitter side, and this method is not effective for connection with a terminal which cannot send this information exactly.
In order to solve the above problems, it is therefore an object of the present invention to provide an inexpensive packet processor and a recording medium with packet communication processing programs recorded thereon, wherein no receiving buffer overflow and underflow due to clock discrepancy between the transmission and reception ends will occur so as to prevent occurrence of packet jitter and hence voce sound with breaks.